type ObjectID = string;

// 任务
export interface TodoSchema {
  _id: ObjectID,

  // 基础信息
  userId: ObjectID, // 任务所属用户
  content: string, // 任务内容
  group: string, // 任务分组

  // 任务信息
  tasks: {
    name: string, // 任务名称（内容）
    memo: string, // 任务备注
    group: number, // 任务分组
    alertTime: Date, // 提醒时间
    endTime: Date, // 截止时间
    repeatRule: string, // 重复周期
    repeatStatus: number, // 重复状态 eg. 0-未开始 1-进行中 2-已结束
    attachment: [{ // 附件
      url: string,
      name: string,
    }]
  }[],

  // 任务分组信息
  groups: {
    name: string, // 分组名称
    color: string, // 分组颜色
    type: string, // 分组类型 eg. 0-默认分组 1-自定义分组
  }[],

  // 数据信息
  createdAt: Date, // 创建时间
  updatedAt: Date, // 更新时间
  deletedAt?: Date, // 删除时间
}
